// 存放接口

// 接口的声明和使用
// 1.找到页面的需要对应哪个接口
// 2、问后端的同事要，找后端；或者看接口文档，如果没有接口文档自己mock(模拟接口)
// 3.看接口：主要看：接口地址、接口的请求方式、接口携带的参数、接口返回的数据
// 4.在api中封装接口，返回一个request方法在方法中配置接口的 接口地址、接口的请求方式、接口携带的参数（有什么配置什么，没有可以省略不写）
// 5.在合适的位置调用接口

// 浏览器请求的查看
// 重点关注最左侧的红色小按钮（录制） 如果发现请求之后一个接口都没有 说明录制没有开
// 重点关注小漏斗中的筛选里面是否有过滤条件 如果有就将它清掉
// 重点关注no throttling 将网络状态关掉

// 拿到接口之后怎么查看
// 点击接口就可以进入接口详情
// 重点关注 标头 headers 载荷 payload 预览 preview
// 1.如果接口是 404 说明接口没有找到 重点看一下标头中的Request URL和 接口文档中的是否一致
// 2.如果返回的状态码不是 404也不是 500多的，大概率是接口传参传错 重点看【载荷】中的传参和【预览】中的错误返回与接口文档对照
// 3.接口返回状态码是500多的就需要检查一下 【标头】中的 Request Method 请求的方法是否和接口文档一致
// 4.如果接口返回状态码是401，说明后端需要的token没有传或者过期
// 后端服务如果真的挂了，需要及时和后端说
import request from '@/utils/request.js'
// import store from '../store'
// 封装接口请求的方法
export const allChannelListAPI = () => {
  return request({
    url: '/v1_0/channels'
  })
}

export const loginApi = ({ mobile, code }) => {
  return request({
    url: '/v1_0/authorizations',
    method: 'POST',
    data: {
      mobile,
      code
    }
  })
}
export const userChannelAPI = () => request({
  url: '/v1_0/user/channels'
  // headers: {
  //   Authorization: 'Bearer ' + store.state.token
  // }
})
// 文章 - 获取列表
export const articlesListAPI = ({ channelId, timestamp }) => {
  return request({
    url: '/v1_0/articles',
    params: {
      channel_id: channelId,
      // 兼容性写法 保证当前面的timestamp 没有值的时候会取到后面的
      // 防止请求参数缺失 接口报错
      timestamp: timestamp || (new Date()).getTime()
    }
  })
}

// 对文章不感兴趣（弹出层不感兴趣接口）
export const articleDislikeAPI = ({ target }) => {
  return request({
    url: '/v1_0/article/dislikes',
    method: 'POST',
    data: {
      target: target
    }
    // headers: {
    //   Authorization: 'Bearer ' + store.state.token
    // }
  })
}

// 文章 - 举报接口
export const articleReportsAPI = ({ target, type, remark }) => {
  return request({
    url: '/v1_0/article/reports',
    method: 'POST',
    data: {
      target: target,
      type: type,
      remark: remark
    }
    // headers: {
    //   Authorization: 'Bearer ' + store.state.token
    // }
  })
}

// 频道管理_更新频道
export const updateChannelAPI = ({ channels }) => {
  return request({
    url: '/v1_0/user/channels',
    method: 'PUT',
    data: {
      channels: channels
    }
  })
}

// 搜索 - 联想菜单
export const suggestListAPI = ({ q }) => {
  return request({
    url: '/v1_0/suggestion',
    params: {
      q: q
    }
  })
}
